package com.analyzer.main;

import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang.StringUtils;

import com.analyzer.entity.Word;

/** @author wyy 
 * @version 1.0 
 * 2015-11-30 上午10:04:49
 */

public class NlpAnalyzer {


	private NlpAnalyzer() {}

	private static NlpAnalyzer single;
	
	private CLibrary lib;

	public static synchronized NlpAnalyzer instance(){
		if(single==null){
			single=new NlpAnalyzer();
			single.init();			
		}
		return single;
	}

	public boolean init(){
		String argu = "";
		String system_charset = "GBK";
		int charset_type = 1;
		int init_flag;
		try {
			
			lib=CLibrary.Instance;
			
			init_flag =CLibrary.Instance.NLPIR_Init(argu.getBytes(system_charset), charset_type, "0".getBytes(system_charset));
			if (0 == init_flag) {
				System.err.println("初始化失败！");
				return false;
			}
		} catch (Exception e) {
			e.printStackTrace();
			return false;
		}
		return true;
	}


	/**分词*/
	public List<Word> split(String content, int bPOSTagged){
		long start=System.currentTimeMillis();
		List<Word> result=new ArrayList<Word>();

		String resStr=lib.NLPIR_ParagraphProcess(content, 1);
		String[] splitArray=StringUtils.split(resStr, " ");
		if(splitArray!=null){
			String [] child=null;
			for (String s : splitArray) {
				if(s==null){
					continue;
				}
			
				child=StringUtils.split(s,"/");
				if(child!=null&&child.length==2){
					Word word=new Word();
					word.setWord(child[0]);
					word.setCixing(child[1]);
					result.add(word);
				}
			}
		}
		System.out.println("content length is="+content.length()+" 耗时:"+(System.currentTimeMillis()-start));
		return result;
	}
	
	
	
	public CLibrary getLib(){
		return lib;
	}

	public static void main(String[] args) {
		List<Word> list=NlpAnalyzer.instance().split("1、在心里为他盖了一座城堡 2008年，我在杭州上大学，心里装着一个叫江叙良的男生。 那一年，杭州城的冬天特别冷。我表达爱的方式，是和江叙良每天约着一起跑步。爱一个人的时候，真是神奇啊。因为江叙良，起床竟然也能变成一件幸福的事。天寒地冻的早晨，我和江叙良跑累了，就停下来说说话。你能想象那个画面吗？面对面站着的两个人，呵出来的雾气融合在一起，如同晨空中飘着一朵棉花糖。雾气相互重叠的那一刻，简直就像一个妙不可言的吻，又甜蜜又温柔。 认真回想起来，我是一眼跌进江叙良的世界的。 那时还是秋天，一群人在KTV里唱歌。时间过半的时候，角落里有个男生突然唱起了《水手》。声音有些沙哑，却像是从心底发出的呐喊，有种触动灵魂的蛊惑力。这样的背景里，我的脑海里出其不意地跳出一句英文，“I have a crush on him”。 真是喜欢“crush”这个词啊，像极了一见钟情。我想我大概是喜欢上了他，以致于后来唱的每一首歌都像是在讲心事。 那一晚，江叙良沉默的样子，让我觉得好奇。你知道的，好奇容易发酵爱情。但就算后来我们混得很熟，我仍然猜不透他。我们之间好像离得很近，又好像隔得很远。那种感觉怎么说呢，就像他站在河的另一边，而我没有船也没有桨。 一直到江叙良生日那天，我鼓足勇气在短信里给他写：愿你永不蹙眉，愿我能抚平你的忧伤。后来手机被我握出了汗，却一直没任何动静。甚至第二天早晨，我在操场上，也没能等来江叙良。 他用这种方式，极尽委婉地拒绝了我。有时我挺羡慕那时的自己，感情充沛得好像永远活在湿漉漉的空气里。所以即便江叙良的人生规划里没有我，我仍然不遗余力地在心里为他盖了一座城堡，灯火通明，只为等到他。 遗憾的是，我终究没能等到他。 我想关于暗恋这件事，大抵就是我对江叙良说了四年的晚安，最后却只能在某个清晨，眼睁睁地看着他离开。 2、一整座城市都在努力惹你开心 认识李明俊的时候，我有点落魄。 怎能不落魄呢？江叙良在毕业前夕毫无征兆地有了女友。学校里流传得最广的版本是，江叙良在网上的中英文互助小组，认识了美籍华侨姑娘Amy，然后有了一段跨越太平洋的恋情。至于两人到底是怎样擦出火花，我们不得而知。 半年后，江叙良和他的Amy姑娘在美国登记结婚，他没费什么劲就拿到绿卡。从此，江叙良这个名字，成了江湖上的一个传说。特别失落的时候，我会不怀好意地想，也许江叙良并不爱她，只不过刚好这个姑娘能为他的人生添砖加瓦。 其实我早就应该想到会有这么一天，江叙良的人生规划里，出国列在第一项。他从来都是这种目标明确的人。飞美国的头一天晚上，江叙良给我打电话，他说：“尹小美，你要幸福啊，我……”他想说什么，却又欲言又止。我在电话这头，无声地哭了出来。 没有江叙良的杭州城，只剩下无尽的落寞。 李明俊是我的同事。有时觉得，他很像以前的我，整天满足得即便是喝口白开水也觉得日子很乐呵。中午休息的时候，李明俊常常捧两杯咖啡带我去天台，跟我有一句没一句的瞎掰。有一次，他目光笃定地看着远方，说：“尹小美，你看天空这么蓝，树叶绿得明亮，这一整座的城市都在努力惹你开心，你有什么理由不快乐？” 我被他那副认真的表情，逗乐了。 后来，李明俊竟然抄了林清玄的话来安慰我，“如果失恋，等不到冰雪尽溶的时候，就放一把火把雪屋都烧了，烧成另一个春天。”我没法告诉他的是，在江叙良那里，我连失恋的资格都没有。 一年之后，我和李明俊在一起了。 李明俊是个很温暖的人。难得的是，他还愿意将温暖分给我。乘坐自动扶梯时，我走在前面，他会一手扶着扶梯，一手将我圈在怀中。似乎这样的理由，就已经足够承担一份爱情。更何况那时，我们都飘在这座城市，对生活有相同的偏好和向往。和他在一起，我觉得心情愉悦，不别扭，像是找回最初的自己。 3、只要看到你的脸，心就软了下来 之后的两三年，我和李明俊的恋爱谈得很欢畅。我们是一路人，比起江叙良，我和李明俊的骨子里都有那么一点随遇而安。所以我们的恋情，称得上势均力敌。 可那个冬天的傍晚，我让李明俊失望了。 那天和平常一样，我俩在厨房里准备晚餐。他神情专注地切着胡萝卜，我在给锅里的红烧肉加一勺糖。一刻钟之后，两人坐下来，抢着吃盐水虾。 最后一只虾，李明俊夹到了我碗里。 对面的他开心地朝我笑着，我也不由自主地跟着笑了起来。其实漫长人生里，这样轻快柔软的时刻能有多少呢？两个成年人面对彼此的时候，还能保持小孩的天真，我想这大概就是爱了吧。 我一边细数着这样的温柔，一边剥手里的虾。手机在这时有微信进来，李明俊顺手帮我点开。江叙良的声音，像是隔了几个时空一样，从遥远的太平洋彼岸传了过来。 江叙良说，小美，谢谢你之前寄的芝麻酥。停顿了一秒，他又说，有时觉得挺想你。 我手里的虾掉进了碗里。 再抬起头来的时候，我看到李明俊像个受了伤的小兽。他什么都没问，脸色却阴沉得厉害。我知道不是李明俊小气，而是我触碰了他的底线。天知道为什么这么多年过去，在听到江叙良的丁点消息时，我还是忍不住去关注。就像上个月，只不过是江叙良在班级群里说，他想吃小城的芝麻酥，我就偷偷满足了他的愿望。 李明俊对我很失望，这很正常。 其实在一起的这些年，我和李明俊很少发生口角。用他的话来说，每次被你气得想撞豆腐时，只要看到你的脸，心就软了下来。 但这次，李明俊沉默的样子，让我有些心慌。   4、真正忘记一个人并非努力克制 后来我才知道，江叙良在一周前回了国。他离婚的消息，我是最后一个知道的。接到电话的那天，杭州下着雨，他说，尹小美，出来坐坐呗。 我想起表妹曾经问我，要怎样才能忘掉一个人？我当时给的答案是：克制。是啊，无非就是努力地克制。克制一种回忆，一种气味，一个场景。当你不需要努力也能应付自如的时候，说明真的就已经忘记。 去见江叙良的路上，我的内心是忐忑的。但当我真正见到他的时候，却暗自松了口气。站在他面前的我，终于可以应付自如：说得体的话，也得体地拿捏两人之间的距离。 大学门口那家我们以前常去的火锅店。热气腾腾的火锅，让人恍然觉得涮在锅里的都是过往的青春和岁月。对面的江叙良说着婚姻的不幸，后来他突然说：“小美，你还愿意和我在一起吗？” 我在这句话里，瞬间愣住。 下一秒，江叙良开始谈论他在这座城市的远景规划。他说到房子车子，说到未来的工作，唯独没有说到我。换句话来说，他只是急于找个人来安放失意的感情，我并不在他的未来规划里。 我想起《花水木》里，生田斗真对新垣结衣说，一开始，你的未来里就没有我。江叙良也一样。大概就是在那个瞬间吧，我和江叙良之间这些年未完待续的剧情，在我心里，划上了一个句号。 这些年，与其说我爱江叙良，不如说我迷恋的是生活的另一种可能性。所以真正忘记一个人并非克制，而是有一天当你知道自己为什么喜欢他的时候，才能真正地忘了他。   5、能相守的，是同类 火锅吃到后半场，我在烟雾缭绕的雾气里，给李明俊发了条道歉的短信。一分钟后，他回我，尹小美，让你先低头怎么这么难啊？我一直在等你的电话。好吧好吧，我原谅你了。 我在他的这句话里，笑出了声。 和江叙良在学校门口道别时，他欲言又止地离开。但我知道，我和江叙良的故事，到此真的就翻篇了。 李明俊在校门口找到我，并没有追问我为什么会在这里。我坐进他的车，广播里是老狼的《昨天今天》：是谁遇见谁，是谁爱上谁，我们早已说不清/是谁离开谁，是谁想着谁，你曾经给我安慰……看着身边这个双手握着方向盘的男人，我突然很想抱抱他。 抱抱他，然后告诉他，其实我挺喜欢和他在一起的时光。虽然这样的日子，摸起来有点粗糙，却有着坚韧而柔软的质地。豪气冲天的年纪里，我曾以为爱是一杯浓烈的酒，爱一个和自己不一样的人，才算是一件很酷的事。后来才知道，白水清粥的日子才是真实的。 我和李明俊是一类人。河对岸的江叙良对我来说，是个想要抵达的彼岸。彼岸风景无限好，但真正能相守的，还是同类。 等红灯的路口，我下意识地往李明俊的身边靠了靠，却被他揽入怀中。我听到这个男人轻轻地在我耳边唱，我怀念的是争吵以后，还是想要爱你的冲动。    猪小浅，杂志撰稿人，文章散见于女报时尚，爱人，意林，青年文摘等。新浪微博：@猪小浅",1);
		for (Word word : list) {
			System.out.println(word.getWord()+"==="+word.getCixing());
		}
	}
}

